package com.action;

import java.util.ArrayList;
import java.util.Collection;

import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.validator.annotations.RequiredStringValidator;
import com.opensymphony.xwork2.validator.annotations.StringLengthFieldValidator;
import com.beans.Usuario;
import com.dao.*;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts2.StrutsStatics;


public class Accesar extends ActionSupport {
	private Usuario usu=null;//=new Usuario();
	
	private Collection<Usuario> cusu=null;
	
	

	public Collection<Usuario> getCusu() {
		return cusu;
	}

	public void setCusu(Collection<Usuario> cusu) {
		this.cusu = cusu;
	}

	public Usuario getUsu() {
		return usu;
	}

	public void setUsu(Usuario usu) {
		this.usu = usu;
	}

	private String alias;
	private String contra;
	
   
	
	/***************************/
	
	
	
	
 
	public String execute() throws Exception {
		UsuarioDAO dao = new UsuarioDAO();	
		//Usuario usux = new Usuario();
		//usux.setDsc_alias(alias);
		//usux.setDsc_clave(contra);		
		
					
		usu=dao.consultarUsuarioAcceso(alias, contra);
		
		cusu=dao.buscarPorNombre(alias);
			
		
		
		if(usu!=null){		
			ActionContext.getContext().getSession().put("usuario", alias);
			HttpServletRequest request = (HttpServletRequest)ActionContext.getContext().
										get(StrutsStatics.HTTP_REQUEST);
			System.out.println(request.getParameter("hidOculto"));
			return SUCCESS;
		}else{		
			addActionError("Usuario y/o clave no son validos");
			return INPUT;
		}
	}
	
	/***************************/
	@RequiredStringValidator(
			message="Campo Alias es requerido.",trim=true)
	public void setAlias(String alias) {
		this.alias = alias;
	}

	public String getAlias() {
		return alias;
	}
	
	
	public String getContra() {
		return contra;
	}
	
	@RequiredStringValidator(
			message="Campo clave es requerido.",trim=true)
	@StringLengthFieldValidator(
			message="Campo clave debe tener minimo 5 caracteres",trim=true,minLength="5")
	public void setContra(String contra) {
		this.contra = contra;
	}

}
